package org.edu.modules.kwgl.controller;

import java.math.BigDecimal;
import java.util.*;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.apache.commons.lang.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.util.CollectionUtils;
import org.edu.common.constant.CommonConstant;
import org.edu.common.system.base.controller.BaseController;
import org.edu.common.api.vo.Result;
import org.edu.common.system.query.QueryGenerator;
import org.edu.common.system.vo.LoginUser;
import org.edu.common.util.oConvertUtils;
import org.edu.modules.kwgl.api.IVeJwJxzyFeignClientService;
import org.edu.modules.kwgl.config.ConfigConstant;
import org.edu.modules.kwgl.entity.*;
import org.edu.modules.kwgl.service.IVeJwBkXueshengService;
import org.edu.modules.kwgl.service.IVeJwCjQingkaoService;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;

import org.edu.modules.kwgl.service.IVeJwQingkaoService;
import org.edu.modules.kwgl.service.IVeJwQkXueshengService;
import org.edu.modules.kwgl.utils.CommonAipUtils;
import org.edu.modules.kwgl.utils.JwTextUtils;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.edu.common.aspect.annotation.AutoLog;

 /**
 * @Description: 清考成绩
 * @Author: jeecg-boot
 * @Date:   2021-05-08
 * @Version: V1.0
 */
@Api(tags="清考成绩")
@RestController
@RequestMapping("/kwgl/veJwCjQingkao")
@Slf4j
public class VeJwCjQingkaoController extends BaseController<VeJwCjQingkao, IVeJwCjQingkaoService> {
	@Autowired
	private IVeJwCjQingkaoService veJwCjQingkaoService;
	@Autowired
	private IVeJwQingkaoService veJwQingkaoService;
	@Autowired
	private IVeJwQkXueshengService veJwQkXueshengService;
	@Autowired
	private IVeJwJxzyFeignClientService veJwJxzyFeignClientService;

	/**
	 * 分页列表查询
	 *
	 * @param veJwCjQingkao
	 * @param pageNo
	 * @param pageSize
	 * @param req
	 * @return
	 */
	@AutoLog(value = "清考成绩-分页列表查询")
	@ApiOperation(value="清考成绩-分页列表查询", notes="清考成绩-分页列表查询")
	@GetMapping(value = "/list")
	public Result<?> queryPageList(VeJwCjQingkao veJwCjQingkao,
								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
								   HttpServletRequest req) {
		QueryWrapper<VeJwCjQingkao> queryWrapper = QueryGenerator.initQueryWrapper(veJwCjQingkao, req.getParameterMap());
		Page<VeJwCjQingkao> page = new Page<VeJwCjQingkao>(pageNo, pageSize);
		IPage<VeJwCjQingkao> pageList = veJwCjQingkaoService.page(page, queryWrapper);
		return Result.ok(pageList);
	}




	 /**
	  * 分页列表查询
	  *
	  * @param veJwCjQingkao
	  * @param pageNo
	  * @param pageSize
	  * @param req
	  * @return
	  */
	 @AutoLog(value = "补考成绩-分页列表查询")
	 @ApiOperation(value="补考成绩-分页列表查询", notes="补考成绩-分页列表查询")
	 @GetMapping(value = "/lrList")
	 public Result<?> lrList(VeJwCjQingkao veJwCjQingkao,
							 @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
							 @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
							 HttpServletRequest req) {
		 List<VeJwCjQingkao> targetList = new ArrayList<>();
		 LambdaQueryWrapper<VeJwQingkao> kaoshiLambdaQueryWrapper=new LambdaQueryWrapper<>();
		 kaoshiLambdaQueryWrapper.eq(VeJwQingkao::getIspublish,1);
		 kaoshiLambdaQueryWrapper.eq(VeJwQingkao::getKcid,veJwCjQingkao.getKcid());
		 List<VeJwQingkao> kaoshiList=veJwQingkaoService.list(kaoshiLambdaQueryWrapper);
		 List<Integer> ids=new ArrayList<>();
		 if(kaoshiList.size()==0){
			 return Result.ok(targetList);
		 }
		 for (VeJwQingkao item:kaoshiList){
			 ids.add(item.getId());
		 }

		 QueryWrapper queryWrapper = new QueryWrapper<>();
		 queryWrapper.in("qkid",ids);
		 List<VeJwQkXuesheng> xueshengs=veJwQkXueshengService.list(queryWrapper);


		 QueryWrapper chengjiWrapper = new QueryWrapper<>();

		 chengjiWrapper.in("qkid",ids);
		 List<VeJwCjQingkao> dataList = veJwCjQingkaoService.list(chengjiWrapper);

		 //查询是否加入清考名单
		 Map<String,VeJwCjQingkao> chengjiMap=new HashMap<>();
		 for (VeJwCjQingkao item:dataList){
			 chengjiMap.put(item.getQkid()+"_"+item.getXh(),item);
		 }

		 for (VeJwQkXuesheng item:xueshengs){
			 if(chengjiMap.containsKey(item.getQkid()+"_"+item.getXh())){
				 targetList.add(chengjiMap.get(item.getQkid()+"_"+item.getXh()));
			 }else {
				 VeJwCjQingkao cjBukao=new VeJwCjQingkao();
				 cjBukao.setFalid(item.getFalid());
				 cjBukao.setSemid(item.getSemid());
				 cjBukao.setSpecid(item.getSpecid());
				 cjBukao.setStuid(item.getStuid());
				 cjBukao.setKcid(item.getKcid());
				 cjBukao.setQkid(item.getQkid());
				 cjBukao.setGradeid(item.getGradeid());
				 cjBukao.setUserid(item.getUserid());
				 cjBukao.setXm(item.getXm());
				 cjBukao.setXh(item.getXh());
				 cjBukao.setXzbid(item.getXzbid());
				 cjBukao.setXzid(item.getXzid());
				 cjBukao.setJxbid(item.getJxbid());
				 veJwCjQingkaoService.save(cjBukao);

				 targetList.add(cjBukao);
			 }
		 }
		 return Result.ok(targetList);
	 }



	/**
	 *   添加
	 *
	 * @param veJwCjQingkao
	 * @return
	 */
	@AutoLog(value = "清考成绩-添加")
	@ApiOperation(value="清考成绩-添加", notes="清考成绩-添加")
	@PostMapping(value = "/add")
	public Result<?> add(@RequestBody VeJwCjQingkao veJwCjQingkao) {
		veJwCjQingkaoService.save(veJwCjQingkao);
		return Result.ok("添加成功！");
	}







	
	/**
	 *  编辑
	 *
	 * @param veJwCjQingkao
	 * @return
	 */
	@AutoLog(value = "清考成绩-编辑")
	@ApiOperation(value="清考成绩-编辑", notes="清考成绩-编辑")
	@PutMapping(value = "/edit")
	public Result<?> edit(@RequestBody VeJwCjQingkao veJwCjQingkao) {
		veJwCjQingkaoService.updateById(veJwCjQingkao);
		return Result.ok("编辑成功!");
	}

	 /**
	  *  成绩编辑
	  *
	  * @param veJwCjQingkao
	  * @return
	  */
	 @AutoLog(value = "清考成绩-成绩编辑")
	 @ApiOperation(value="清考成绩-成绩编辑", notes="清考成绩-成绩编辑")
	 @PutMapping(value = "/editScore")
	 public Result<?> editScore(@RequestBody VeJwCjQingkao veJwCjQingkao) {
		 VeJwCjQingkao old = veJwCjQingkaoService.getById(veJwCjQingkao.getId());
		 if(old == null){
			 return Result.error("记录不存在!");
		 }
		 if(old.getAuditstatus() == ConfigConstant.AUDIT_AGREE){
			 return Result.error("记录已审核，不可编辑!");
		 }
		 VeJwCjQingkao update=new VeJwCjQingkao();
		 update.setId(veJwCjQingkao.getId());
		 update.setIspass(veJwCjQingkao.getIspass());
		 update.setKccj(veJwCjQingkao.getKccj());
		 veJwCjQingkaoService.updateById(update);
		 return Result.ok("编辑成功!");
	 }

	 /**
	  *  审核
	  *
	  * @param veJwCjQingkao
	  * @return
	  */
	 @AutoLog(value = "清考成绩-审核")
	 @ApiOperation(value="清考成绩-审核", notes="清考成绩-审核")
	 @PutMapping(value = "/audit")
	 public Result<?> audit(@RequestBody VeJwCjQingkao veJwCjQingkao) {
		 VeJwCjQingkao old = veJwCjQingkaoService.getById(veJwCjQingkao.getId());
		 if(old == null){
			 return Result.error("记录不存在!");
		 }
		 if(old.getAuditstatus() == ConfigConstant.AUDIT_AGREE){
			 return Result.error("记录已审核!");
		 }
		 VeJwCjQingkao update=new VeJwCjQingkao();
		 update.setId(veJwCjQingkao.getId());
		 update.setAuditstatus(veJwCjQingkao.getAuditstatus());
		 veJwCjQingkaoService.updateById(update);
		 return Result.ok("审核成功!");
	 }
	
	/**
	 *   通过id删除
	 *
	 * @param id
	 * @return
	 */
	@AutoLog(value = "清考成绩-通过id删除")
	@ApiOperation(value="清考成绩-通过id删除", notes="清考成绩-通过id删除")
	@DeleteMapping(value = "/delete")
	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
		veJwCjQingkaoService.removeById(id);
		return Result.ok("删除成功!");
	}
	
	/**
	 *  批量删除
	 *
	 * @param ids
	 * @return
	 */
	@AutoLog(value = "清考成绩-批量删除")
	@ApiOperation(value="清考成绩-批量删除", notes="清考成绩-批量删除")
	@DeleteMapping(value = "/deleteBatch")
	public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
		this.veJwCjQingkaoService.removeByIds(Arrays.asList(ids.split(",")));
		return Result.ok("批量删除成功!");
	}
	
	/**
	 * 通过id查询
	 *
	 * @param id
	 * @return
	 */
	@AutoLog(value = "清考成绩-通过id查询")
	@ApiOperation(value="清考成绩-通过id查询", notes="清考成绩-通过id查询")
	@GetMapping(value = "/queryById")
	public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
		VeJwCjQingkao veJwCjQingkao = veJwCjQingkaoService.getById(id);
		if(veJwCjQingkao==null) {
			return Result.error("未找到对应数据");
		}
		return Result.ok(veJwCjQingkao);
	}

//    /**
//    * 导出excel
//    *
//    * @param request
//    * @param veJwCjQingkao
//    */
//    @RequestMapping(value = "/exportXls")
//    public ModelAndView exportXls(HttpServletRequest request, VeJwCjQingkao veJwCjQingkao) {
//        return super.exportXls(request, veJwCjQingkao, VeJwCjQingkao.class, "清考成绩");
//    }


	 /**
	  * 导出excel
	  *
	  * @param request
	  * @param veJwCjQingkao
	  */
	 @RequestMapping(value = "/exportXls")
	 public ModelAndView exportXlsKaoshi(HttpServletRequest request, VeJwCjQingkao veJwCjQingkao) {
		 //获取课程清考人员名单
		 List<VeJwCjQingkao> targetList = new ArrayList<>();
		 LambdaQueryWrapper<VeJwQingkao> kaoshiLambdaQueryWrapper=new LambdaQueryWrapper<>();
		 kaoshiLambdaQueryWrapper.eq(VeJwQingkao::getIspublish,1);
		 kaoshiLambdaQueryWrapper.eq(VeJwQingkao::getKcid,veJwCjQingkao.getKcid());
		 List<VeJwQingkao> kaoshiList=veJwQingkaoService.list(kaoshiLambdaQueryWrapper);
		 List<Integer> ids=new ArrayList<>();
		 if(kaoshiList.size()!=0){

			 for (VeJwQingkao item:kaoshiList){
				 ids.add(item.getId());
			 }

			 QueryWrapper queryWrapper = new QueryWrapper<>();
			 queryWrapper.in("qkid",ids);
			 List<VeJwQkXuesheng> xueshengs=veJwQkXueshengService.list(queryWrapper);


			 QueryWrapper chengjiWrapper = new QueryWrapper<>();

			 chengjiWrapper.in("qkid",ids);
			 List<VeJwCjQingkao> dataList = veJwCjQingkaoService.list(chengjiWrapper);

			 //查询是否加入清考名单
			 Map<String,VeJwCjQingkao> chengjiMap=new HashMap<>();
			 for (VeJwCjQingkao item:dataList){
				 chengjiMap.put(item.getQkid()+"_"+item.getXh(),item);
			 }

			 for (VeJwQkXuesheng item:xueshengs){
				 if(chengjiMap.containsKey(item.getQkid()+"_"+item.getXh())){
					 targetList.add(chengjiMap.get(item.getQkid()+"_"+item.getXh()));
				 }else {
					 VeJwCjQingkao cjBukao=new VeJwCjQingkao();
					 cjBukao.setFalid(item.getFalid());
					 cjBukao.setSemid(item.getSemid());
					 cjBukao.setSpecid(item.getSpecid());
					 cjBukao.setStuid(item.getStuid());
					 cjBukao.setKcid(item.getKcid());
					 cjBukao.setQkid(item.getQkid());
					 cjBukao.setGradeid(item.getGradeid());
					 cjBukao.setUserid(item.getUserid());
					 cjBukao.setXm(item.getXm());
					 cjBukao.setXh(item.getXh());
					 cjBukao.setXzbid(item.getXzbid());
					 cjBukao.setXzid(item.getXzid());
					 cjBukao.setJxbid(item.getJxbid());
					 veJwCjQingkaoService.save(cjBukao);

					 targetList.add(cjBukao);
				 }
			 }
		 }



		 String kcmc=veJwJxzyFeignClientService.getKcNameById(veJwCjQingkao.getKcid());


		 List<VeJwCjQingkaoExcel> array = new ArrayList<>();
//		map存key减少重复查询
		 Map<Integer, String> zybMap = CommonAipUtils.getZybIdNameMap();
		 Map<Integer, String> njMap = CommonAipUtils.getGradeIdNameMap();
		 Map<Integer, String> xqMap = CommonAipUtils.getXueqiIdName();
		 Map<Integer, String> zyMap = new HashMap<>();
		 Map<Integer, String> banjiMap = new HashMap<>();

		 Map<Integer, String> zyrzmcMap = new HashMap<>();
		 for (VeJwCjQingkao item : targetList) {
			 VeJwCjQingkaoExcel excelItem = new VeJwCjQingkaoExcel();


			 excelItem.setXh(item.getXh());
			 excelItem.setXm(item.getXm());

//			专业部名称
			 if (item.getFalid() != null && zybMap.containsKey(item.getFalid())) {
				 excelItem.setFalidName(zybMap.get(item.getFalid()));
			 }
//			年级名称
			 if (item.getGradeid() != null && njMap.containsKey(item.getGradeid())) {
				 excelItem.setGradeidName(njMap.get(item.getGradeid()));
			 }
//			获取专业名称
			 if (item.getSpecid() != null) {
				 if (!zyMap.containsKey(item.getSpecid())) {
					 zyMap.put(item.getSpecid(), CommonAipUtils.getZyById(item.getSpecid()));
				 }
				 excelItem.setSpecidName(zyMap.get(item.getSpecid()));
			 }
			 excelItem.setCjidName(item.getKccj()==null ?"":item.getKccj().toString());
			 excelItem.setCj(item.getIspass() == null ? "" : item.getIspass() == ConfigConstant.PASS ? "及格" : "不及格");
//			获取专业名称
			 if (item.getSemid() != null && xqMap.containsKey(item.getSemid())) {
				 excelItem.setSemidName(xqMap.get(item.getSemid()));
			 }


			 excelItem.setKcidName(kcmc);

			 array.add(excelItem);
		 }


		 LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
		 ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
		 mv.addObject("fileName", "成绩");
		 mv.addObject("entity", VeJwCjQingkaoExcel.class);
		 mv.addObject("params", new ExportParams("成绩报表", "导出人:" + sysUser.getRealname(), "成绩"));
		 mv.addObject("data", array);
		 return mv;
	 }





//    /**
//      * 通过excel导入数据
//    *
//    * @param request
//    * @param response
//    * @return
//    */
//    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
//    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
//        return super.importExcel(request, response, VeJwCjQingkao.class);
//    }

	 /**
	  * 通过excel导入数据
	  *
	  * @param request
	  * @param response
	  * @return
	  */
	 @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
	 public Result<?> importExcelKaoshi(HttpServletRequest request, HttpServletResponse response) {
		 MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
		 String kcid = request.getParameter("kcid");
		 Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
		 Iterator var6 = fileMap.entrySet().iterator();
		 if (var6.hasNext()) {
			 Map.Entry<String, MultipartFile> entity = (Map.Entry) var6.next();
			 MultipartFile file = (MultipartFile) entity.getValue();
			 ImportParams params = new ImportParams();
			 params.setTitleRows(2);
			 params.setHeadRows(1);
			 params.setNeedSave(true);

			 Result var11;
			 try {
				 //map存key减少重复查询
				 Map<String, Integer> zybMap = CommonAipUtils.getZybNameIdMap();
				 Map<Integer, String> njMap = CommonAipUtils.getGradeIdNameMap();
				 Map<String, Integer> xueqiNameId = CommonAipUtils.getXueqiNameId();

				 Map<Integer, String> zyMap = new HashMap<>();
				 Map<Integer, String> banjiMap = new HashMap<>();

				 List<VeJwCjQingkaoExcel> list = ExcelImportUtil.importExcel(file.getInputStream(), VeJwCjQingkaoExcel.class, params);
				 long start = System.currentTimeMillis();
				 int success = 0;
				 int error = 0;
				 Map<String, Integer> errorMsg = new HashMap<>();
				 List<VeJwCjQingkao> updateTemp = new ArrayList<VeJwCjQingkao>();
				 for (VeJwCjQingkaoExcel item : list) {
					 String xh = item.getXh();
					 String xm = item.getXm();
					 //学期
					 String semidName = item.getSemidName();
					 Integer semId;
					 if (!xueqiNameId.containsKey(semidName)) {
						 errorCountMap("学期匹配失败", errorMsg);
						 error++;
						 continue;
					 }
					 semId = xueqiNameId.get(semidName);
					 //成绩
					 String cjidName = item.getCjidName();
					 //是否通过
					 String cj = item.getCj();
					 if (StringUtils.isBlank(cjidName) || StringUtils.isBlank(cj)) {
						 errorCountMap("成绩或是否通过为空", errorMsg);
						 error++;
						 continue;
					 }

					 LambdaQueryWrapper<VeJwCjQingkao> lambda = new QueryWrapper<VeJwCjQingkao>().lambda();
					 lambda.eq(VeJwCjQingkao::getXm, xm);
					 lambda.eq(VeJwCjQingkao::getXh, xh);
					 lambda.eq(VeJwCjQingkao::getSemid, semId);
					 lambda.orderByDesc(VeJwCjQingkao::getId);
					 lambda.last("LIMIT 1");
					 VeJwCjQingkao one = veJwCjQingkaoService.getOne(lambda);
					 if(one == null){
						 errorCountMap("清考信息获取有误", errorMsg);
						 error++;
						 continue;
					 }
					 VeJwCjQingkao temp = new VeJwCjQingkao();
					 temp.setId(one.getId());
					 BigDecimal cjBig;
					 try {
						 cjBig = new BigDecimal(cjidName);
					 } catch (Exception e) {
						 errorCountMap("成绩输入有误", errorMsg);
						 error++;
						 continue;
					 }
					 temp.setKccj(cjBig);
					 //结果
					 if (ConfigConstant.PASS_TEXT_JIGE.equals(cj)) {
						 temp.setIspass(ConfigConstant.PASS);
					 }else{
						 temp.setIspass(ConfigConstant.NO_PASS);
					 }
					 updateTemp.add(temp);

					 success++;
				 }
				 this.veJwCjQingkaoService.updateBatchById(updateTemp);
				 log.info("消耗时间" + (System.currentTimeMillis() - start) + "毫秒");
				 if (error == 0) {
					 return Result.ok("文件导入成功！数据行数：" + updateTemp.size());
				 } else {
					 StringBuffer stringBuffer = new StringBuffer();
					 if (!errorMsg.isEmpty()) {
						 Set<String> strings = errorMsg.keySet();
						 for (String key : strings) {
							 Integer integer = errorMsg.get(key);
							 stringBuffer.append(key);
							 stringBuffer.append(":");
							 stringBuffer.append(integer);
							 stringBuffer.append("条、");
						 }
					 }
					 return Result.ok("文件导入成功！成功" + success + "条，失败" + error + "条。"+stringBuffer.toString());
				 }
			 } catch (Exception var23) {
				 log.error(var23.getMessage(), var23);
				 var11 = Result.error("文件导入失败:" + var23.getMessage());
			 } finally {
				 try {
					 file.getInputStream().close();
				 } catch (IOException var22) {
					 var22.printStackTrace();
				 }

			 }

			 return var11;
		 } else {
			 return Result.error("文件导入失败！");
		 }
	 }


	 /**
	  * 记录错误
	  * @param key
	  * @param errorMap
	  */
	 public void errorCountMap(String key,Map<String, Integer> errorMap){
		 if (errorMap.containsKey(key)) {
			 Integer integer = errorMap.get(key) +1;
			 errorMap.put(key, integer);
		 }else{
			 errorMap.put(key, 1);
		 }
	 }


	 /**
	  * 批量更新成绩
	  *
	  * @param list
	  * @return
	  */
	 @AutoLog(value = "补考成绩管理-批量更新成绩")
	 @ApiOperation(value="补考成绩管理-批量更新成绩", notes="补考成绩管理-批量更新成绩")
	 @PutMapping(value = "/updateCjBatch")
	 public Result<?> updateCjBatch(@RequestBody List<VeJwCjQingkao> list) {

		 //获取课程总分
		 BigDecimal ksfs = new BigDecimal(veJwJxzyFeignClientService.getKcKsfsById(list.get(0).getKcid()));
		 //及格分数
		 BigDecimal jgfs=ksfs.multiply(new BigDecimal("0.6"));

//		 List<VeJwCjBukao> bkcjs = list.stream().filter(item -> item.getKccj()
//				 .compareTo(ksfs)<=0).collect(Collectors.toList());
//
//		 if(bkcjs.size()<list.size()){
//			 return Result.error("学生成绩不得大于课程总分！请检查！");
//		 }
//		 veJwCjBukaoService.updateBatchById(bkcjs);

		 for (VeJwCjQingkao item: list){
			 if(item.getKccj()!=null){
				 if (item.getKccj().compareTo(ksfs)>0){
					 return Result.error("学生成绩不得大于课程总分！请检查！");
				 }
				 if(item.getKccj().compareTo(jgfs)>=0){
					 item.setIspass(1);
				 }else{
					 item.setIspass(0);
				 }
			 }
		 }
		 veJwCjQingkaoService.updateBatchById(list);


		 return Result.ok("补考成绩提交成功!");
	 }





}
